package com.mapper;

import com.domain.entity.Indent;
import com.domain.req.ListIndentReq;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author caishenao
 * @description 针对表【indent】的数据库操作Mapper
 * @createDate 2023-10-12 20:12:39
 * @Entity com.entity.Indent
 */
@Mapper
public interface IndentMapper {

    /***
     * 新增订单
     * @param indent 订单实体类
     */
    void insert(@Param("indent") Indent indent);

    /**
     * 查询订单集合
     *
     * @param listIndentReq 订单筛选数据
     * @return 符合筛选条件的订单集合
     */
    List<Indent> list(@Param("listIndentReq") ListIndentReq listIndentReq);

    /**
     * 根据订单id查询订单数据
     *
     * @param id 订单id
     * @return 订单数据
     */
    Indent getById(@Param("id") Integer id);

    /**
     * 根据订单id删除订单信息
     *
     * @param id 订单id
     */
    void deleteById(@Param("id") Integer id);


    /**
     * 选择行修改订单数据
     *
     * @param indent 订单数据
     */
    void updateIndent(@Param("indent") Indent indent);

    /**
     * 根据订单id和用户id查询订单数据
     *
     * @param indentId 订单id
     * @param userId   用户id
     * @return 对应的订单数据
     */
    Indent getByIdAndUserId(@Param("indentId") Integer indentId, @Param("userId") Integer userId);
}




